package lession11_12

import (
	"math/big"
)

// 第11讲 实战一（上）：业务开发常用的基于贫血模型的MVC架构违背OOP吗？


// 12 使用基于充血模型的DDD开发一个虚拟钱包系统
// golang DDD https://github.com/KendoCross/kendoDDD
/*
	对于DDD的理解 Domain有点像5G项目中的UserInfo 将业务逻辑转移到Domain中 service层只与持久化层打交道

 */


// 很多具有支付、购买功能的应用（比如淘宝、滴滴出行、极客时间等）都支持钱包的功能。
//应用为每个用户开设一个系统内的虚拟钱包账户，支持用户充值、提现、支付、冻结、透
//  下载APP 
//支、转赠、查询账户余额、查询交易流水等操作。




// 贫血模型controller
type VirtualWalletColltroller struct {
	virtualWalletService VirtualWalletService
}

// 查询余额
func (this *VirtualWalletColltroller)getBalance(walletId int64)(balance big.Int){
	return balance
}

// 出账


// 入账

type VirtualWalletBO struct {
	id int64
	createTime int64
	balance big.Int
}



type VirtualWalletService struct {

}

